The amount of natural language text is rapidly increasing. In order for a system to extract, catalog and utilize information from natural language text, it is imperative for the system to correctly identify the meaning associated with a term presented in the text. This is a difficult task as many terms share the same common components and consequently, many terms in natural language text are ambiguous. Incorrect assignment of meanings to ambiguous terms in natural language text can decrease the efficiency of natural language processing and have a detrimental impact on user experience. For example, incorrect assignment of meanings to ambiguous terms in natural language text can decrease the accuracy of natural language queries, which relies heavily on natural language processing.